﻿#Region "Imports Directive"

Imports System

#End Region

Namespace C4F.DevKit.Bluetooth

    Namespace FileTransferProfile

        ''' <summary>
        ''' EventArgs class to be used when an DeleteFolder operation begins.
        ''' </summary>
        Public Class DeleteFolderBeginEventArgs
            Inherits EventArgs

#Region "Private Members"

            ''' <summary>
            ''' The location of the folder on remote device that has to be 
            ''' deleted.
            ''' </summary>
            Private remFolderPath As String

            ''' <summary>
            ''' Flag indicating whether Sub-Folders have to be deleted.
            ''' </summary>
            Private m_deleteSubDirectories As Boolean

            ''' <summary>
            ''' The user-supplied state object supplied when the asynchronous 
            ''' operation was requested.
            ''' </summary>
            Private m_userState As Object

#End Region

#Region "Public Properties"

            ''' <summary>
            ''' Gets the location of the folder on remote device that has to be
            ''' deleted.
            ''' </summary>
            Public ReadOnly Property RemoteFolderPath() As String

                Get
                    Return Me.remFolderPath
                End Get

            End Property

            ''' <summary>
            ''' Gets the flag indicating whether Sub-Folders have to be 
            ''' deleted.
            ''' </summary>
            Public ReadOnly Property DeleteSubDirectories() As Boolean

                Get
                    Return Me.m_deleteSubDirectories
                End Get

            End Property

            ''' <summary>
            ''' Gets the user-supplied state object supplied when the 
            ''' asynchronous operation was requested.
            ''' </summary>
            Public ReadOnly Property UserState() As Object

                Get
                    Return Me.m_userState
                End Get

            End Property

#End Region

#Region "Constructor"

            ''' <summary>
            ''' Initializes the DeleteFolderBeginEventArgs object.
            ''' </summary>
            ''' <param name="remotefolderPath">The location of the folder on 
            ''' remote device that has to be deleted.</param>
            ''' <param name="deleteSubDirectories">Flag indicating whether 
            ''' Sub-Folders have to be deleted.</param>
            ''' <param name="userState">The user-supplied state object 
            ''' supplied when the asynchronous operation was requested.</param>
            Public Sub New(ByVal remotefolderPath As String, _
                            ByVal deleteSubDirectories As Boolean, ByVal userState As Object)

                MyBase.New()
                Me.remFolderPath = remotefolderPath
                Me.m_deleteSubDirectories = deleteSubDirectories
                Me.m_userState = userState

            End Sub

#End Region

        End Class
    End Namespace
End Namespace
